package sessionbeans;

import java.util.List;

import javax.ejb.Local;
import javax.ejb.Remote;

import entities.CantidadMateriaPrima;
import entities.PedidoFabricacion;
import entitiesdto.CantidadMateriaPrimaDTO;
import entitiesdto.MateriaPrimaDTO;
import entitiesdto.StockMateriaPrimaDTO;


/* manejo de materias primas */


@Local
public interface AdminMateriaPrima {

	/* Item 4 a) ver si existe la cantidad necesaria de materias primas
	 * para fabricar los articulos pedidos
	 */
	
	public boolean verificarMateriasPrimas(PedidoFabricacion pf);
	
	
	/* Actualizar el stock de materias primas
	 *  Item 5) agregar = true: agrego cantidad de materia prima (por recibir envio de proveedor)
	 *  Item 4 b) agregar = false: resto materia prima (por fabricar)
	 */
	public boolean actualizarStock(CantidadMateriaPrima cmp, boolean agregar);
	
	/* Item 4 c) cuando haga falta materia prima, generar el
	 * pedido a proveedores. */
	
	public boolean generarPedidoProveedores(CantidadMateriaPrima cmp);
	
	public List<StockMateriaPrimaDTO> recibirProvedores(List<StockMateriaPrimaDTO> actualizacionStock);


}
